Skip to content

Enable Mix validation in socket-restricted orchestration sandboxes#6

Open
nmandal wants to merge 6 commits intomainfrom
feature/mix-validation-sandbox-fix
Open

Enable Mix validation in socket-restricted orchestration sandboxes#6
nmandal wants to merge 6 commits intomainfrom
feature/mix-validation-sandbox-fix

Conversation

@nmandal
Copy link
Owner

@nmandal nmandal commented Mar 16, 2026

Fixes NIC-413: Resolves Mix.PubSub socket permission failures in sandboxed environments. Implements automatic environment detection with LocalPubSub fallback. Includes comprehensive tests and documentation for socket-restricted testing.

nmandal added 6 commits March 14, 2026 18:44
- Add /dashboard route with query parameter support for v2 interface
- Implement tabbed navigation (Overview, Issues, Metrics)
- Add clickable issue table with detail page views
- Support deep linking: /dashboard?v=2&tab=issues&issueId=NIC-xxx
- Enhanced CSS styling for v2 while maintaining v1 compatibility
- Add slide-in animations and responsive mobile design
- Add alert detection logic to Presenter for capacity, rate limits, and orchestrator health
- Implement alerts panel UI in both v1 and v2 dashboards
- Support warning/critical severity levels with color coding
- Include specific remediation guidance for each alert type
- Graceful empty state when no alerts present
- Responsive grid layout for multiple alerts
- Add sticky navigation bar with tabs and quick action buttons
- Implement quick refresh, alert jump, and retry queue navigation
- Add smooth scrolling with proper scroll margins
- Include context-aware button visibility with count badges
- Mobile responsive layout with stacked navigation
- JavaScript scroll-to event handling for smooth UX
- Add comprehensive device testing matrix for mobile/tablet viewports
- Implement performance budget with Core Web Vitals targets
- Create automated Lighthouse audit script with mobile focus
- Build responsive design test suite using Puppeteer
- Include touch target validation and accessibility checks
- Set up package.json with test automation scripts

Addresses NIC-343: Symphony Mobile QA device matrix + perf budget

Testing framework includes:
- 5 primary test devices (iPhone 15 Pro, SE, Samsung S24, etc.)
- Performance targets: LCP <1.5s, FID <50ms, CLS <0.1
- Automated screenshot capture across viewports
- Horizontal overflow detection
- Touch target size validation (≥44px)
- Text readability checks (≥16px)

Ready for immediate use via: npm run full-qa
Complete notification system implementation:

📱 CORE FEATURES:
- Smart notification hierarchy (Critical/Important/Info)
- Context-aware routing (desktop vs mobile, DnD, workout)
- Duplicate suppression with configurable time windows
- Intelligent batching to reduce notification noise

🔔 NOTIFICATION TYPES:
- Financial alerts (portfolio changes >5%, position moves >15%)
- Task/productivity alerts (stuck tasks, ready-for-review)
- Health reminders (missing vitals, workout tracking, HRV)
- System alerts (service outages, API failures)

🚀 PWA INTEGRATION:
- Service Worker with background notification handling
- Rich notification actions (Open, Snooze, Dismiss, API calls)
- Offline notification queue and caching
- Push API integration ready

🧠 SMART ROUTING:
- Respects Do Not Disturb (10pm-7am CT, except critical)
- Suppresses mobile when desktop active (except critical)
- Workout time awareness (emergency only)
- User preference enforcement per category

📊 TESTING & QUALITY:
- Comprehensive test suite (routing, suppression, factories)
- TypeScript with full type safety
- Mock browser APIs for testing
- Integration test utilities

Addresses NIC-342: Symphony Mobile Notifications high-signal alerts

Ready for immediate integration into Symphony dashboard.
Time to completion: 90 minutes as planned.
- Implement automatic environment detection for socket restrictions
- Add LocalPubSub as socket-free alternative to Phoenix.PubSub
- Configure application to adapt PubSub strategy based on environment
- Add comprehensive test coverage for sandbox environments
- Document setup for socket-restricted orchestration runs

Key Features:
- Auto-detects socket availability and falls back appropriately
- LocalPubSub provides compatible API without network dependencies
- Environment variables for explicit configuration
- Graceful degradation when PubSub is unavailable
- Focused mix test commands now succeed in restricted environments

Fixes: NIC-413

This resolves the Mix.PubSub :eperm failures in sandboxed orchestration
by providing socket-free alternatives while maintaining functionality.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant